﻿using System;
using System.Collections.Generic;

namespace Program20
{
    class Program
    {
        static void Main(string[] args)
        {
            //1.{患者：“大夫，我咳嗽得很重。”     大夫：“你多大年记？”     患者：“七十五岁。”     
            //大夫：“二十岁咳嗽吗”患者：“不咳嗽。”     大夫：“四十岁时咳嗽吗？”     
            //患者：“也不咳嗽。”     大夫：“那现在不咳嗽，还要等到什么时咳嗽？}
            //找出第1次出现咳嗽的位置是第几个字符

            //string str = "患者：“大夫，我咳嗽得很重。”     大夫：“你多大年记？”     患者：“七十五岁。”     大夫：“二十岁咳嗽吗”患者：“不咳嗽。”     大夫：“四十岁时咳嗽吗？”     患者：“也不咳嗽。”     大夫：“那现在不咳嗽，还要等到什么时咳嗽？”";
            //int index = str.IndexOf("咳嗽");
            //int i = 1;
            //Console.WriteLine("第1次出现咳嗽的位置是{0}", index);
            //while (index != -1)
            //{
            //    i++;
            //    index = str.IndexOf("咳嗽", index + 1);
            //    if (index == -1)
            //    {
            //        break;
            //    }
            //    Console.WriteLine("第{0}次找到咳嗽的位置是{1}", i, index);
            //}
            //Console.ReadKey();

            //2.将字符串"  hello      world,你  好 世界   !    "
            //两端空格去掉，并且将其中的所有其他空格都替换成一个空格，
            //输出结果为："hello world,你 好 世界 !"。

            //string s = "  hello      world,你  好 世界   !    ";
            //s = s.Trim();
            //string[] sNew = s.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            //string strNew = string.Join(" ", sNew);
            //Console.Write(strNew);
            //Console.ReadKey();

            //3.存储用户输入的姓名，回车存储；只要用户不输入‘quit’就可以一直输入。
            //输入quit后打印出所有刚才输入的姓名，统计个数
            
                //List<string> list = new List<string>();
                //string names = "";
                //int count = 0;
                //while (names != "quit")
                //{
                //    names = Console.ReadLine();
                //    if (names.ToLower() == "quit")
                //    {
                //        break;
                //    }
                //    count++;
                //    list.Add(names);
                //}

                //for (int j = 0; j < list.Count; j++)
                //{
                //    Console.Write(list[j] + " ");
                //}
                //Console.WriteLine();

                //Console.WriteLine("总数：{0}", count);



            //4.请将字符串数组{ "中国", "美国", "巴西", "澳大利亚", "加拿大" }中的内容反转。然后输出反转后的数组。不能用数组的Reverse()方法

            string[] strArray = { "中国", "美国", "巴西", "澳大利亚", "加拿大" };

            string temp = "";
            Console.WriteLine("交换前：");
            foreach (var item in strArray)
            {

                Console.Write(item + " ");

            }
            for (int i = 0; i < strArray.Length / 2; i++)
            {
                temp = strArray[i];

                strArray[i] = strArray[strArray.Length - 1 - i];

                strArray[strArray.Length - 1 - i] = temp;

            }
            Console.WriteLine();
             Console.WriteLine("交换后：");
            foreach (var item in strArray)
            {

                Console.Write(item + " ");

            }
            Console.ReadKey();

            //5. 用方法来实现：计算两个数的最大值。 扩展：计算任意多个数间的最大值
            Console.WriteLine();
            Console.WriteLine(GetMax(1,5,7,22,16,50,40));

        }

        public static int GetMax(params int[] nums)
        {
            int max = nums[0];
            for (int i = 0; i < nums.Length; i++)
            {
                if (nums[i] > max)
                    max = nums[i];
            }

            return max;
        }

        


    }
}
